﻿#ifndef C_GAME_ENGINE_H
#define C_GAME_ENGINE_H
#include <Windows.h>
#include <tchar.h>
#include <string>
#include <vector>
#include "../Common/CommonDefinition.h"
#include "../Common/CEditor.h"
#include "../Common/CWindow.h"
#include "../Common/CDebug.h"
#include "CStatusBar.h"
#include "resource.h"

using namespace std;


//自动匹配string
#ifdef UNICODE
#define TString wstring
#else
#define TString string
#endif

//游戏引擎类
class CGameEngine
{
public:
	//初始化引擎
	bool InitEngine(HINSTANCE hInstance, HWND hParent, DLGPROC proc);
	//加载模块
	void LoadLibs();
	//执行编辑器菜单处理函数
	void MenuCommand(UINT uId);
	//设置背景颜色
	void SetBkColor(COLORREF color);

private:
	//遍历库目录
	void EnumLibs(vector<TString> &vtLibraries);


public:
	//窗口对象
	CWindow m_Win;
	CDebug debug;
	CStatusBar StatusBar;

private:
	//已加载的DLL模块列表
	vector<DLL_INFO> m_vtDllList;
};

#endif